/************************* (C) COPYRIGHT 2011 J&DSoft **************************
* File Name          : DataSizeVariable.h
* Tags               : SizeVariable
* Author             : Litvin Yuriy
* TS Idea            : 2011
* TS Version         : 2013-08-14 15:24:43
* Description        : Data Size Variable (DSV).
*******************************************************************************/

/* Define to prevent recursive inclusion ------------------------------------ */
#ifndef NS_JDSOFT_DATASIZEVARIABLE_H
#define NS_JDSOFT_DATASIZEVARIABLE_H



/* Includes ------------------------------------------------------------------*/
#include <stddef.h>
#include "BaseTypes.h"



/* Exported function prototypes ----------------------------------------------*/

// Функции используются для С и С++ проектов
#ifdef __cplusplus
extern "C" {
#endif //__cplusplus


b   DSV_Stream_GetSizeT(const c8 ** ppStream, const c8 * const pStreamEnd, size_t * pSize);
b   DSV_Stream_SetSizeT(c8 ** ppStream, const c8 * const pStreamEnd, size_t Size);
b   DSV_Stream_ObjectInRange(const c8 * pStream, const c8 * const pStreamEnd);
ui  DSV_Stream_GetCountEffectiveBits(const c8 * pStream);
ui  DSV_Stream_GetLength(const c8 * pStream);
ui  DSV_SizeT_GetLength(size_t Size);

ui  DSV_pData_SetSizeT(c8 * pData, size_t Value);
ui  DSV_pData_GetSizeT(const c8 *pData, size_t * pValue);


#ifdef __cplusplus
}
#endif //__cplusplus


#endif // NS_JDSOFT_DATASIZEVARIABLE_H

/************************* (C) COPYRIGHT 2011 J&DSoft *************************/
